package com.ruoyi.system.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 表具信息对象 water_meter
 *
 * @author ruoyi
 * @date 2025-09-24
 */
public class WaterMeter extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 公司编号 */
    @Excel(name = "公司编号")
    private String companyId;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String companyName;

    /** 表具号 */
    @Excel(name = "表具号")
    private String meterNo;

    /** 设备ID */
    private String deviceId;

    /** 户号 */
    @Excel(name = "户号")
    private String userId;

    /** 用户名 */
    @Excel(name = "用户名")
    private String userName;

    /** 表类型0：远传表，1手抄表  */
    @Excel(name = "表类型0：远传表，1手抄表 ")
    private String meterType;

    /** 水表口径 */
    @Excel(name = "水表口径")
    private String waterDiameter;

    /** 是否通水（1通水，2表已装，未用水，3未装表，未通水） */
    @Excel(name = "是否通水", readConverterExp = "1=通水，2表已装，未用水，3未装表，未通水")
    private String isSupply;

    /** 表状态0待用,1安装,2使用,3停用,4拆除 9作废 */
    @Excel(name = "表状态0待用,1安装,2使用,3停用,4拆除 9作废")
    private Integer meterState;

    /** 价格表编号 */
    @Excel(name = "价格表编号")
    private String priceCode;

    /** 用户类型: 0居民,1工商 */
    @Excel(name = "用户类型: 0居民,1工商")
    private String userType;

    /** 初始读数 */
    @Excel(name = "初始读数")
    private String initialReading;

    /** 当前读数 */
    @Excel(name = "当前读数")
    private String currentReading;

    /** 阀门状态 0:开,1:关 */
    @Excel(name = "阀门状态")
    private String controlStatus;

    /** 抄表时间 */
    @Excel(name = "抄表时间")
    private String readDate;
    /** 瞬时流量 */
    @Excel(name = "瞬时流量")
    private String flux;
    /** 压力 */
    @Excel(name = "压力")
    private String pressure;

    /** 信号强度 */
    private String signalinten;

    /** 安装地址 */
    @Excel(name = "安装地址")
    private String address;

    /** 生产厂家 */
    @Excel(name = "生产厂家")
    private String maker;

    /** 欠费 */
    @Excel(name = "欠费")
    private String arrearsAmount;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setCompanyId(String companyId)
    {
        this.companyId = companyId;
    }

    public String getCompanyId()
    {
        return companyId;
    }
    public void setCompanyName(String companyName)
    {
        this.companyName = companyName;
    }

    public String getCompanyName()
    {
        return companyName;
    }
    public void setMeterNo(String meterNo)
    {
        this.meterNo = meterNo;
    }

    public String getMeterNo()
    {
        return meterNo;
    }

    public String getDeviceId() {
        return deviceId;
    }

    public void setDeviceId(String deviceId) {
        this.deviceId = deviceId;
    }

    public void setUserId(String userId)
    {
        this.userId = userId;
    }

    public String getUserId()
    {
        return userId;
    }
    public void setUserName(String userName)
    {
        this.userName = userName;
    }

    public String getUserName()
    {
        return userName;
    }
    public void setMeterType(String meterType)
    {
        this.meterType = meterType;
    }

    public String getMeterType()
    {
        return meterType;
    }
    public void setWaterDiameter(String waterDiameter)
    {
        this.waterDiameter = waterDiameter;
    }

    public String getWaterDiameter()
    {
        return waterDiameter;
    }
    public void setIsSupply(String isSupply)
    {
        this.isSupply = isSupply;
    }

    public String getIsSupply()
    {
        return isSupply;
    }
    public void setMeterState(Integer meterState)
    {
        this.meterState = meterState;
    }

    public Integer getMeterState()
    {
        return meterState;
    }
    public void setPriceCode(String priceCode)
    {
        this.priceCode = priceCode;
    }

    public String getPriceCode()
    {
        return priceCode;
    }
    public void setUserType(String userType)
    {
        this.userType = userType;
    }

    public String getUserType()
    {
        return userType;
    }

    public String getControlStatus() {
        return controlStatus;
    }

    public void setControlStatus(String controlStatus) {
        this.controlStatus = controlStatus;
    }

    public void setReadDate(String readDate)
    {
        this.readDate = readDate;
    }

    public String getReadDate()
    {
        return readDate;
    }
    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }
    public void setArrearsAmount(String arrearsAmount)
    {
        this.arrearsAmount = arrearsAmount;
    }

    public String getArrearsAmount()
    {
        return arrearsAmount;
    }

    public String getInitialReading() {
        return initialReading;
    }

    public void setInitialReading(String initialReading) {
        this.initialReading = initialReading;
    }

    public String getCurrentReading() {
        return currentReading;
    }

    public void setCurrentReading(String currentReading) {
        this.currentReading = currentReading;
    }

    public String getFlux() {
        return flux;
    }

    public void setFlux(String flux) {
        this.flux = flux;
    }

    public String getPressure() {
        return pressure;
    }

    public void setPressure(String pressure) {
        this.pressure = pressure;
    }

    public String getSignalinten() {
        return signalinten;
    }

    public void setSignalinten(String signalinten) {
        this.signalinten = signalinten;
    }

    public String getMaker() {
        return maker;
    }

    public void setMaker(String maker) {
        this.maker = maker;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("companyId", getCompanyId())
                .append("companyName", getCompanyName())
                .append("meterNo", getMeterNo())
                .append("userId", getUserId())
                .append("userName", getUserName())
                .append("meterType", getMeterType())
                .append("waterDiameter", getWaterDiameter())
                .append("isSupply", getIsSupply())
                .append("meterState", getMeterState())
                .append("priceCode", getPriceCode())
                .append("userType", getUserType())
                .append("initialReading", getInitialReading())
                .append("currentReading", getCurrentReading())
                .append("controlStatus", getControlStatus())
                .append("readDate", getReadDate())
                .append("address", getAddress())
                .append("arrearsAmount", getArrearsAmount())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("remark", getRemark())
                .toString();
    }
}
